Brushless DC motors typically have a permanent magnet rotor and three Y-connected field coils that are energized sequentially in series-connected pairs to form a rotating magnetic field to drive the rotor. Commutation of the coils is usually effected by three pairs of solid-state switches. These switches connect the terminals of each coil to either the power supply bus, or to ground, as appropriate. In the simplest control scheme (i.e., six step, trapezoidal control), these switches are operated as a function of the angular position of the rotor to sequentially connect the field coils, in various series-connected combinations, between the power source and ground. The currents supplied to the motor coils create the torque developed by the motor. These currents are controlled by pulse-width-modulating the various switches, while feeding back the resulting voltage drop across a current-sensing resistor in a common return path to ground. The maximum value of motor current is usually determined by a limiting circuit, that opens the conducting switches when-ever the current-sensing voltage exceeds a preset amount.
However, it is believed necessary to protect the various solid-state switching elements that are used to control the current supply from excessive current spikes. These current spikes can occur with an "aiding" (i.e., regenerative) load.
Accordingly, it would be generally desirable to provide an improved switching controller for such DC brushless motors, which controller also functions to limit undesired current spikes.